Interfacing Engines and Schedulers in OR-Parallel Prolog Systems

نویسندگان

  • Péter Szeredi
  • Rong Yang
  • Mats Carlsson
چکیده

Parallel Prolog systems consist, at least conceptually, of two components: an engine and a scheduler. This paper addresses the problem of deening a clean interface between these components. Such an interface has been designed for Aurora, a prototype or-parallel implementation of the full Prolog language for shared memory multiprocessors. The practical purpose of the interface is to enable diierent engine and scheduler implementations to be used interchangeably. The development of the interface has, however, contributed in great extent to the clariication of issues in exploiting or-parallelism in Prolog. We believe that these issues are relevant to a wider circle of research in the area of or-parallel implementations of logic programming. We believe that the concept of an engine-scheduler interface is applicable to a wider range of parallel Prolog implementations. Indeed, the present interface has been used in the Andorra-I system, which supports both and-and or-parallelism.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A team-based scheduling model for interfacing or-parallel prolog engines

Logic Programming languages, such as Prolog, offer a great potential for the exploitation of implicit parallelism. One of the most noticeable sources of implicit parallelism in Prolog programs is or-parallelism. Or-parallelism arises from the simultaneous evaluation of a subgoal call against the clauses that match that call. Nowadays, multicores and clusters of multicores are becoming the norm ...

متن کامل

Novel Models for Or-Parallel Logic Programs: A Performance Analysis

One of the advantages of logic programming is the fact that it offers many sources of implicit parallelism, such as and-parallelism and or-parallelism. Arguably, or-parallel systems, such as Aurora and Muse, have been the most successful parallel logic programming systems so far. Or-parallel systems rely on techniques such as Environment Copying to address the problem that branches being explor...

متن کامل

Design of a Resolution Multiprocessor for the Parallel Virtual Machine

PAN is a process based Prolog system running in a distributed manner on the nodes of a virtual multiprocessor. It was designed to be a general purpose parallel logic programming system that would be resilient to software and hardware evolution. Programs can explicitly control parallelism through passing general terms synchronously or asynchronously among PAN’s Prolog engines. Alternatively seve...

متن کامل

The Muse Approach to Or - Parallel

Muse (Multi-sequential Prolog engines) is a simple and eecient approach to Or-parallel execution of Prolog programs. It is based on having several sequential Prolog engines, each with its local address space, and some shared memory space. It is currently implemented on a 7-processors machine with local/shared memory constructed at SICS, a 16-processors Sequent Symmetry, a 96-processors BBN Butt...

متن کامل

Coupling Committed and Trial Binding Resolution Engines

The ability of sequential and parallel Prologs to implement don’t know non-determinism in resolution efficiently makes them apt for supporting a knowledge base querying capability. On the other hand their search based execution model and their trial use of bindings makes them unsuitable for systems programming. Conversely the use by concurrent logic programming or CLP languages of committed bin...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1991